﻿using System;
using System.CodeDom.Compiler;
using System.Diagnostics;
using Google.Protobuf;
using Google.Protobuf.Collections;
using Google.Protobuf.Reflection;

namespace EggLink.DanhengServer.Proto
{
	// Token: 0x02000EE9 RID: 3817
	[DebuggerDisplay("{ToString(),nq}")]
	public sealed class RogueGameItemValue : IMessage<RogueGameItemValue>, IMessage, IEquatable<RogueGameItemValue>, IDeepCloneable<RogueGameItemValue>, IBufferMessage
	{
		// Token: 0x17003081 RID: 12417
		// (get) Token: 0x0600AB39 RID: 43833 RVA: 0x001CF644 File Offset: 0x001CD844
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public static MessageParser<RogueGameItemValue> Parser
		{
			get
			{
				return RogueGameItemValue._parser;
			}
		}

		// Token: 0x17003082 RID: 12418
		// (get) Token: 0x0600AB3A RID: 43834 RVA: 0x001CF64B File Offset: 0x001CD84B
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public static MessageDescriptor Descriptor
		{
			get
			{
				return RogueGameItemValueReflection.Descriptor.MessageTypes[0];
			}
		}

		// Token: 0x17003083 RID: 12419
		// (get) Token: 0x0600AB3B RID: 43835 RVA: 0x001CF65D File Offset: 0x001CD85D
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		MessageDescriptor IMessage.Descriptor
		{
			get
			{
				return RogueGameItemValue.Descriptor;
			}
		}

		// Token: 0x0600AB3C RID: 43836 RVA: 0x001CF664 File Offset: 0x001CD864
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public RogueGameItemValue()
		{
		}

		// Token: 0x0600AB3D RID: 43837 RVA: 0x001CF677 File Offset: 0x001CD877
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public RogueGameItemValue(RogueGameItemValue other) : this()
		{
			this.virtualItem_ = other.virtualItem_.Clone();
			this._unknownFields = UnknownFieldSet.Clone(other._unknownFields);
		}

		// Token: 0x0600AB3E RID: 43838 RVA: 0x001CF6A1 File Offset: 0x001CD8A1
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public RogueGameItemValue Clone()
		{
			return new RogueGameItemValue(this);
		}

		// Token: 0x17003084 RID: 12420
		// (get) Token: 0x0600AB3F RID: 43839 RVA: 0x001CF6A9 File Offset: 0x001CD8A9
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public MapField<uint, uint> VirtualItem
		{
			get
			{
				return this.virtualItem_;
			}
		}

		// Token: 0x0600AB40 RID: 43840 RVA: 0x001CF6B1 File Offset: 0x001CD8B1
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override bool Equals(object other)
		{
			return this.Equals(other as RogueGameItemValue);
		}

		// Token: 0x0600AB41 RID: 43841 RVA: 0x001CF6BF File Offset: 0x001CD8BF
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public bool Equals(RogueGameItemValue other)
		{
			return other != null && (other == this || (this.VirtualItem.Equals(other.VirtualItem) && object.Equals(this._unknownFields, other._unknownFields)));
		}

		// Token: 0x0600AB42 RID: 43842 RVA: 0x001CF6F4 File Offset: 0x001CD8F4
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override int GetHashCode()
		{
			int num = 1;
			num ^= this.VirtualItem.GetHashCode();
			if (this._unknownFields != null)
			{
				num ^= this._unknownFields.GetHashCode();
			}
			return num;
		}

		// Token: 0x0600AB43 RID: 43843 RVA: 0x001CF728 File Offset: 0x001CD928
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override string ToString()
		{
			return JsonFormatter.ToDiagnosticString(this);
		}

		// Token: 0x0600AB44 RID: 43844 RVA: 0x001CF730 File Offset: 0x001CD930
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void WriteTo(CodedOutputStream output)
		{
			output.WriteRawMessage(this);
		}

		// Token: 0x0600AB45 RID: 43845 RVA: 0x001CF739 File Offset: 0x001CD939
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		void IBufferMessage.InternalWriteTo(ref WriteContext output)
		{
			this.virtualItem_.WriteTo(ref output, RogueGameItemValue._map_virtualItem_codec);
			if (this._unknownFields != null)
			{
				this._unknownFields.WriteTo(ref output);
			}
		}

		// Token: 0x0600AB46 RID: 43846 RVA: 0x001CF760 File Offset: 0x001CD960
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public int CalculateSize()
		{
			int num = 0;
			num += this.virtualItem_.CalculateSize(RogueGameItemValue._map_virtualItem_codec);
			if (this._unknownFields != null)
			{
				num += this._unknownFields.CalculateSize();
			}
			return num;
		}

		// Token: 0x0600AB47 RID: 43847 RVA: 0x001CF799 File Offset: 0x001CD999
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void MergeFrom(RogueGameItemValue other)
		{
			if (other == null)
			{
				return;
			}
			this.virtualItem_.MergeFrom(other.virtualItem_);
			this._unknownFields = UnknownFieldSet.MergeFrom(this._unknownFields, other._unknownFields);
		}

		// Token: 0x0600AB48 RID: 43848 RVA: 0x001CF7C7 File Offset: 0x001CD9C7
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void MergeFrom(CodedInputStream input)
		{
			input.ReadRawMessage(this);
		}

		// Token: 0x0600AB49 RID: 43849 RVA: 0x001CF7D0 File Offset: 0x001CD9D0
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		void IBufferMessage.InternalMergeFrom(ref ParseContext input)
		{
			uint num;
			while ((num = input.ReadTag()) != 0U)
			{
				if (num != 106U)
				{
					this._unknownFields = UnknownFieldSet.MergeFieldFrom(this._unknownFields, ref input);
				}
				else
				{
					this.virtualItem_.AddEntriesFrom(ref input, RogueGameItemValue._map_virtualItem_codec);
				}
			}
		}

		// Token: 0x0400458F RID: 17807
		private static readonly MessageParser<RogueGameItemValue> _parser = new MessageParser<RogueGameItemValue>(() => new RogueGameItemValue());

		// Token: 0x04004590 RID: 17808
		private UnknownFieldSet _unknownFields;

		// Token: 0x04004591 RID: 17809
		public const int VirtualItemFieldNumber = 13;

		// Token: 0x04004592 RID: 17810
		private static readonly MapField<uint, uint>.Codec _map_virtualItem_codec = new MapField<uint, uint>.Codec(FieldCodec.ForUInt32(8U, 0U), FieldCodec.ForUInt32(16U, 0U), 106U);

		// Token: 0x04004593 RID: 17811
		private readonly MapField<uint, uint> virtualItem_ = new MapField<uint, uint>();
	}
}
